The conventional art will be described while taking an IP (Internet Protocol) packet which is switched on the Internet as an example.
An IP packet traffic is referred to as a best effort type traffic, for which quality of service (QOS: Quality of Service) guarantee is not specified unlike the ATM network. However, following a recent increase in Internet traffic, demand for guaranteeing QOS even for the IP packet traffic is gradually rising. In this background, there is a fact that it is difficult for a multimedia application which requires such real time characteristic as those of telephone communication and motion pictures to keep sufficient communication quality on the conventional best effort type network.
As one of QOS guarantee mechanisms for the IP network, there is known “a packet scheduler”. This means that a network node which performs packet switching, classifies input packets into a plurality of queues, the scheduler schedules each queue in accordance with a preset priority or weight and controls packet transmission from each queue. A packet scheduler of this type is disclosed in, for example, JP 11-261634A entitled “Packet Scheduling Control Method”, JP 11-275116A entitled “Traffic Control Method for Providing Predictive/Guaranteed Service”, JP 9-83547A entitled “Packet Scheduling Apparatus” and the like.
However, an IP packet has a variable length. It is assumed herein that in an environment in which packets (to be referred to as “premium packets” hereinafter) which belong to a premium traffic which is required to be processed in real time and packets (to be referred to as “low priority packets” hereinafter) which is not required to be processed in real time are mingled, the “premium packets” occupy most of the traffic. In this case, if a conventional scheduler starts transmitting a low priority long packet which has a large packet length, a packet which belongs to multimedia traffic which should be transmitted with the highest priority cannot be transmitted until the low priority packet has been transmitted. Therefore, the conventional scheduler has a problem that real time characteristic is deteriorated.
This problem will be described with reference to an example of FIG. 5. In FIG. 5(A), respective “premium packets” have a fixed length and transmitted at constant transmission intervals T's. Now, as shown in FIGS. 5(B) and 5(C), if a “low priority packet” of which the transmission time exceeds T is to be transmitted, the transmission of the “premium packets” is shifted before or after that of the “low priority packet”. Therefore, a fluctuation of the delay of “premium packets” occurs, which may possibly deteriorate real time characteristic.
This problem is normally expressed as an occurrence of a transmission delay and an occurence of a transmission jitter (a fluctuation of transmission delay) to the “premium packets”. If the transmission intervals of “premium packets” is short on a low rate line, this problem becomes more conspicuous. Conversely, if a “low priority packet” scheduling is executed so as not to influence the transmission of the “premium packets”, a problem occurs that the “low priority packet” which has a large packet length is not processed forever.
To solve these problems, a method for dividing a “low priority packet” into a plurality of short packets, and transmitting the short packets at idle times between the times at which “premium packets” are transmitted, is proposed in “Cisco Systems, Quality of Service for Voice over IP Solutions Guide, Ver 1.0, CHAPTER 2, pp. 22-32”. According to the method proposed therein, it is recommended that the length of each of the divided packets is determined according to a line rate, and a node performs a packet division processing based on the determined length.
Generally, however, the load of a line is not fixed but always varies. According to the conventionally proposed method, the low priority packet which is input into the node is divided into a plurality of packets each having a fixed length irrespectively of the magnitude of the load. If the load is light, the transmission interval of the “premium packets” is long and the “low priority packet” is, therefore, divided into a plurality of packets despite no need to do so. On the other hand, if the load is heavy and each of the “low priority packets” divided to have a fixed length is long, then the transmission of the “premium packets” may be influenced by the “low priority packets”.
The header format of an IP packet is shown in FIG. 6. The header format includes the following header fields.
Version: 4 bitsVersion FieldIHL: 4 bitsInternet Header Length FieldType of Service: 8 bitsType of Service FieldTotal Length: 16 bitsPacket Length fieldIdentification: 16 bitsRecognition FieldFlags: 3 bitsControl Flag FieldFragment Offset: 13 bitsFragment Offset FieldTime to Live: 8 bitsThe number of routers through which the IPpacket can be passedProtocol: 8 bitsProtocol FieldHeader Checksum: 16 bitsHeader Checksum FieldSource Address: 32 bitsDestination Address FieldDestination address: 32 bitsSource Address FieldOptions: variableOption FieldPadding: variablePadding Field